import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
import dotenv from 'dotenv'

// 使用 .env 文件来设置环境变量
const { parsed: env } = dotenv.config({
  path: '.env.' + process.env.NODE_ENV
})

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
  ],
  resolve: {
    alias: {
      '@': resolve(__dirname, './src'),
      'img': './src/assets/img'
    },
  },

  // 本地开发配置
  server: {
    port: 8125, // 端口号
    host: '0.0.0.0', // 监听所有地址
    hmr: { // 解决手机连本地一直刷新的问题
      host: '127.0.0.1',
      protocol: 'ws'
    },
    // 自定义代理规则(可配多个，可配正则)
    proxy: {
      '/user-center': 'https://a.lala.com',
      '^/business-.+/': 'https://b.wowo.com'
    }
  },

  envPrefix: ['VITE_', 'VUE_'], // 环境变量自定义前缀 暴露客户端
  // 定义全局环境常量替换方式
  define: {
    // 'process.env': env // 将上面的env赋值到这里
    'process.env': {
      NODE_ENV: process.env.NODE_ENV, // 额外补充一个
      ...env
    }
  },
})
